package com.yourenbang.lingyun.transaction.web.domain.vo.pay.haike;

import com.yourenbang.lingyun.core.util.json.ToJSON;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;

/**
 * @Description
 * @Date 2021/8/19 9:35
 * @Created by Jason
 */
@Data
public class HkTransactionVO implements Serializable, ToJSON {
    /**
     * 交易流水		必填
     */
    private String logNo;
    /**
     * 交易日期		必填	交易日期时间:日期时间 yyyyMMdd
     */
    private String acDt;
    /**
     * 交易类型		必填
     * 01-有卡消费
     * 02-有卡撤销
     * 03-消费冲正
     * 04-预授权
     * 05-预授权撤销
     * 06-微信消费
     * 07-微信消费撤销
     * 08-支付宝消费
     * 09-支付宝消费撤销
     * 10-银联二维码消费
     * 11-银联二维码撤销
     * 12-云闪付消费
     */
    private String txnCd;

    /**
     * 交易手续费标识		必填
     * 01-有卡普通交易
     * 02-无卡普通交易
     * 03-云闪付优惠
     * 04-小额双免
     * 05-银联二维码优惠
     */
    private String txnFeeFlg;

    /**
     * 交易业务属性		必填	01-普通交易 03-激活交易 押金 04-服务费收取 05-优惠类交易
     */
    private String txnBusTyp;
    /**
     * 交易时间		必填 	格式：yyyyMMddHH24miss
     */
    private String txnTm;
    /**
     * 交易结果		必填 	S:成功     C:被冲正
     */
    private String ttxnSts;

    /**
     * 交易卡号		必填
     */
    private String crdNo;
    /**
     * 卡类型		必填	05-借记卡 06-贷记卡
     */
    private String crdFlg;


    /**
     * 交易金额		必填	单位(元)金额 0.00
     */
    private BigDecimal txnAmt;
    /**
     * 商户手续费		必填	单位(元)金额 0.00
     */
    private BigDecimal mercFeeAmt;
    /**
     * 快提手续费		必填	单位(元)金额0.00
     */
    private BigDecimal businessThrAmt;
    /**
     * 终端号		必填
     */
    private String trmNo;
    /**
     * 批次号		必填
     */
    private String batNo;
    /**
     * 终端流水号		必填
     */
    private String cseqNo;
    /**
     * 商户号		必填
     */
    private String mercId;
    /**
     * 商户名称		必填
     */
    private String mercNm;
    /**
     * Sn编号		必填
     */
    private String snNo;
    /**
     * 结算类型		必填	0:TS 1:T+1
     */
    private String stlTyp;
    /**
     * 手续费类型		必填	1-非封顶  2-封顶
     */
    private String feeTyp;
    /**
     * 代理商编号		必填	商户直属代理商编号
     */
    private String agtMercId;
    /**
     * 代理商名称		必填	商户直属代理商名称
     */
    private String agtMercNm;
    /**
     * 代理商级别		必填	商户直属代理商级别
     */
    private String agtMercLvl;
    /**
     * 政策编号		必填
     */
    private String policyId;
    /**
     * 贷记卡费率		必填
     */
    private String ccardTfee;
    /**
     * 借记卡费率		必填
     */
    private String dcardTfee;
    /**
     * 借记卡封顶		必填
     */
    private String dcardMax;
    /**
     * 费率		必填	此笔交易所使用的费率
     */
    private String feeRate;

    /**
     * 流量费金额
     */
    private BigDecimal iccPayAmt;

}
